<?php

/**
 * Page d'envoi de mail
 */
try {

	//Identifiant de l'onglet d'envoi de mails aux invités
	$idOnglet = tabGetIdByCode('TAB_ENVOI_MAIL_INVITES');
	
	//Identifiant de l'onglet
	$idOngletListeInvites = tabGetIdByCode('TAB_LISTE_INVITES');
	
	//On récupère les informations du cookie
	$idMariage = getIdMariage();
	$infosMariage = getInfosMariage($idMariage);
	
	if ($_SERVER['REQUEST_METHOD'] === 'GET') {
		//Accession à la page par GET, on redirige vers la liste des invités
		header('Location: '.buildUrl(getCurrentBaseUrl().'/index.php'
		  							,array
		  								('onglet'	=> $idOngletListeInvites
		  								)
		  							)
			  );
		exit;
	} elseif ($_SERVER['REQUEST_METHOD'] === 'POST') {
		//Accession par POST
		//Initiialisation des variables d'affichage
		$from = '';
		$to = '';
		$subject = '';
		$message = '';
		
		//Récupération de tous les invités du mariage
		$tousInvites = getListeInvitesByMariage($infosMariage[KEY_ID_MARIAGE]);
		$nbTotalInvites = count($tousInvites);
		$listeInvitesEnvoiMail = array();
		
		if (isset($_POST['envoiMail'])) {
			$classMsg = '';
			$msgToPrint = '';
			
			//Appel par POST depuis la page d'envoi de mail
			if (printField($_POST['from']) === '') {
				//Pas d'envoyeur défini, on sort en erreur
				$classMsg = 'msgError';
				$msgToPrint = '';
				//TODO
			} elseif (printField($_POST['to']) === '') {
				//Pas de destinataire défini, on sort en erreur
				$classMsg = 'msgError';
				$msgToPrint = '';
				//TODO
			} elseif (printField($_POST['subject']) === '') {
				//Pas de sujet défini, on sort en erreur
				$classMsg = 'msgError';
				$msgToPrint = '';
				//TODO
			} elseif (printField($_POST['message']) === '') {
				//Pas de message défini, on sort en erreur
				$classMsg = 'msgError';
				$msgToPrint = '';
				//TODO
			}
			
			$to = printField($_POST['to']);
			$arrayTo = explode(";", $to);
			//$mailsErr = sendMail(printField($_POST['from']), $arrayTo, printField($_POST['subject']), printField($_POST['message']));
			if (count($mailsErr) > 0) {
				//Erreurs avec certains mails
				$classMsg = 'msgError';
				$msgToPrint = '';
			} else {
				//Tous les mails ont été envoyés
				$classMsg = 'msgConfirm';
				$msgToPrint = 'Tous les mails ont été envoyés';
			}
		} else {
			//Appel par POST depuis la page de la liste des invités
			$idxDebut = (isset($_POST['idxStart'])) ? intval($_POST['idxStart']) : 0;
			//On vérifie s'il s'agit d'un envoi à tous les invités ou non et on constitue la liste des invités
			//à qui envoyer un mail
			if (isset($_POST['sendAllInvitees']) && $_POST['sendAllInvitees'] == '1') {
				//Envoi massif à tous les invités
				$listeInvitesEnvoiMail = extractValuesFromArray($tousInvites, 'EMAIL');
			} else {
				for ($i=$idxDebut; $i<$nbTotalInvites; $i++) {
					if (isset($_POST['mail_'.$i])) {
						//On ajoute l'invité correspondant à la liste des invités à qui envoyer un mail
						$listeInvitesEnvoiMail[] = $tousInvites[$i]['EMAIL'];
					}
				}
			}
			$to = implode(';', $listeInvitesEnvoiMail);
		}
	}
?>

<form action="index.php?onglet=<?php echo $idOnglet; ?>" method="post">
	<table>
		<tr>
			<td class="emailInterLine emailWidth">De : </td>
			<td class="emailInterLine">
				<input type="text" name="from" value="<?php echo $from; ?>" readonly="readonly" size="66" />
			</td>
		</tr>
		<tr>
			<td class="emailInterLine">
				&Agrave; : *
			</td>
			<td class="emailInterLine">
				<textarea name="to" rows="2" cols="50"><?php echo $to; ?></textarea>
			</td>
		</tr>
		<tr>
			<td class="emailInterLine">Sujet : </td>
			<td class="emailInterLine">
				<input type="text" name="subject" value="<?php echo $subject; ?>" size="66" />
			</td>
		</tr>
		<tr>
			<td class="emailInterLine">Message : </td>
			<td class="emailInterLine">
				<textarea name="message" rows="4" cols="50"><?php echo $message; ?></textarea>
			</td>
		</tr>
		<tr>
			<td class="emailInterLine"></td>
			<td class="emailInterLine" align="right">
				<input type="submit" value="Envoyer" />
			</td>
		</tr>
	</table>
	<input type="hidden" name="envoiMail" value="" />
</form>
<p><br /></p>
<div class="note">* : Le séparateur à utiliser est ;</div>

<?php

if (isset($_POST['envoiMail'])) {
	//Un envoi de mail a été envoyé
?>
<div class="<?php echo $classMsg; ?>">
	
</div>
<?php } // if (isset($_POST['envoiMail'])) {

	} // try {
	catch (Exception $e) {
		redirectErrorPage($e, 'TAB_ENVOI_MAIL_INVITES', URI_ERROR_PAGE);
	}
?>